package com.enjoyor.soa.traffic.api.service.dubbo.mtps;

import java.util.List;

import com.enjoyor.soa.traffic.api.dto.mtps.AppCommonMenuDto;
import com.enjoyor.soa.traffic.util.pojo.ResultPojo;

public interface IDubboAppCommonMenuService {

    /**
     * 根据用户ID查询常用菜单
     *
     * @param userId 用户id
     * @return
     */
    public ResultPojo selectByUserId(String userId);

    /**
     * 添加用户常用菜单表
     *
     * @param userId     用户id
     * @param personName 用户名 （用于日志记录）
     * @param menuId     菜单id
     * @param code       code
     * @param name       菜单名
     * @param type       菜单所属类型
     * @return
     */
    public ResultPojo insert(String userId, String personName, String menuId, String code, String name, String type, String token);

    /**
     * 批量添加用户常用菜单表
     *
     * @param appCommonMenuDtos{ userId 用户id,menuId 菜单id,code code,name 菜单名,type 菜单所属类型 }
     * @return
     */
    public ResultPojo insertList(List<AppCommonMenuDto> appCommonMenuDtos, String token);

    /**
     * 移除用户常用菜单
     *
     * @param id         常用菜单主键
     * @return
     */
    public ResultPojo delete(String id, String token);

    /**
     * 批量删除用户常用菜单
     *
     * @param ids        常用菜单主键列表
     * @return
     */
    public ResultPojo deleteList(List<String> ids, String token);


    /**
     * 删除用户常用菜单
     *
     * @param userId
     * @return
     */
    public ResultPojo deleteByUserId(String userId, String token);

}
